/******************************************************
Cours:   LOG121
Session: A2013
Groupe:  04
Projet: Laboratoire #4
Étudiant(e)s: Fredy Alexander Bonilla, Renaud Vincent, Simon Castro
                            
Professeur : Francis Cardinal
Nom du fichier: Translation.java
Date créé: 2013-11-26
Date dern. modif. 2013-11-26
*******************************************************
Historique des modifications
*******************************************************
2013-11-26 Version1
*******************************************************/

/**
 * La classe Translation implemente Command. Elle execute l'action d'une translation
 * sur une perspective d'image et notifie les observateurs du changement de la 
 * perspective
 * @author Simon
 * @author Fredy
 *
 */
public class Translation implements Command {

	// Attributs
	private Perspective p;
	private int xT;
	private int yT;
	
	/**
	 * Constructeur de la classe Translation. Il recoit en parametre deux coordonnes
	 * et une perspective
	 * 
	 * @param xT
	 * @param yT
	 * @param p
	 */
	public Translation(int xT, int yT, Perspective p){	
		this.p = p;
		this.xT = xT;
		this.yT = yT;
	}
	
	/**
	 * Methode implementee de l'interface commande
	 */
	public void execute() {
	
		this.p.setCoinX(this.p.getCoinX() + this.xT);
		this.p.setCoinY(this.p.getCoinY() + this.yT);
		
		this.p.notifierObservateurs();
	}
}
